package com.sqx.modules.creation.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.sqx.common.utils.Result;
import com.sqx.modules.creation.entity.NCreation;
import com.sqx.modules.creation.entity.dto.AuditCreationDto;
import com.sqx.modules.creation.entity.dto.GetCreationListDto;
import com.sqx.modules.creation.entity.dto.SelCreationListDto;
import com.sqx.modules.creation.entity.dto.UserWriteDto;

/**
 * <p>
 * 创作表 服务类
 * </p>
 *
 * @author author
 * @since 2024年09月03日
 */
public interface CreationService extends IService<NCreation> {

    Result getCreationList(GetCreationListDto getCreationListDto);

    Result selCreationList(Long userId, SelCreationListDto selCreationListDto);

    Result userWrite(Long userId ,UserWriteDto userWriteDto);

    Result getMyCreationList(Long userId, Integer page, Integer limit,Long selUserId,Long classify);

    Result getMyFollowList(Long userId, Integer page, Integer limit);

    Result getMyFansList(Long userId, Integer page, Integer limit);

    Result selLabels();

    Result deleteCreation(Long userId,Long creationId);

    Result selCreationById(Long userId,Long creationId);

    Result selUserInfo(Long userId,Long selUserId);

    Result auditCreation(AuditCreationDto auditCreationDto);

    Result getCreationDetail(Integer creationId);

    Result deleteCreationById(Long[] creationIds);
}
